package com.jlmv.poseidon.entidades;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;


/**
 * The persistent class for the persona database table.
 * 
 */
@Entity
@Table(name="persona")
@NamedQuery(name="Persona.findAll", query="SELECT p FROM Persona p")
public class Persona implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@SequenceGenerator(name="PERSONA_SECPERSONA_GENERATOR", sequenceName="PERSONA_SEC_PERSONA_SEQ")
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="PERSONA_SECPERSONA_GENERATOR")
	@Column(name="sec_persona", unique=true, nullable=false)
	private Integer secPersona;

	@Column(name="correo_electronico", length=255)
	private String correoElectronico;

	@Column(name="direccion_correspondencia", length=130)
	private String direccionCorrespondencia;

	@Column(nullable=false, length=1)
	private String estado;

	@Temporal(TemporalType.DATE)
	@Column(name="fecha_nacimiento")
	private Date fechaNacimiento;

	@Column(nullable=false, length=30)
	private String identificacion;

	@Column(name="nombre_razon_social", nullable=false, length=130)
	private String nombreRazonSocial;

	@Column(name="primer_apellido", length=30)
	private String primerApellido;

	@Column(name="segundo_apellido", length=30)
	private String segundoApellido;

	@Column(nullable=false, length=1)
	private String tipo;

	//uni-directional many-to-one association to TipoDocumento
	@ManyToOne
	@JoinColumn(name="sec_tipo_documento", nullable=false)
	private TipoDocumento tipoDocumento;

	public Persona() {
	}

	public Integer getSecPersona() {
		return this.secPersona;
	}

	public void setSecPersona(Integer secPersona) {
		this.secPersona = secPersona;
	}

	public String getCorreoElectronico() {
		return this.correoElectronico;
	}

	public void setCorreoElectronico(String correoElectronico) {
		this.correoElectronico = correoElectronico;
	}

	public String getDireccionCorrespondencia() {
		return this.direccionCorrespondencia;
	}

	public void setDireccionCorrespondencia(String direccionCorrespondencia) {
		this.direccionCorrespondencia = direccionCorrespondencia;
	}

	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public Date getFechaNacimiento() {
		return this.fechaNacimiento;
	}

	public void setFechaNacimiento(Date fechaNacimiento) {
		this.fechaNacimiento = fechaNacimiento;
	}

	public String getIdentificacion() {
		return this.identificacion;
	}

	public void setIdentificacion(String identificacion) {
		this.identificacion = identificacion;
	}

	public String getNombreRazonSocial() {
		return this.nombreRazonSocial;
	}

	public void setNombreRazonSocial(String nombreRazonSocial) {
		this.nombreRazonSocial = nombreRazonSocial;
	}

	public String getPrimerApellido() {
		return this.primerApellido;
	}

	public void setPrimerApellido(String primerApellido) {
		this.primerApellido = primerApellido;
	}

	public String getSegundoApellido() {
		return this.segundoApellido;
	}

	public void setSegundoApellido(String segundoApellido) {
		this.segundoApellido = segundoApellido;
	}

	public String getTipo() {
		return this.tipo;
	}

	public void setTipo(String tipo) {
		this.tipo = tipo;
	}

	public TipoDocumento getTipoDocumento() {
		return this.tipoDocumento;
	}

	public void setTipoDocumento(TipoDocumento tipoDocumento) {
		this.tipoDocumento = tipoDocumento;
	}

}